var http = require('http');
var fs = require('fs');
var cheerio = require('cheerio');
var request = require('request');

var DATE = new Date();

var year = "17";
var month = (DATE.getMonth() + 1) < 10 ? "0" + (DATE.getMonth() + 1) : (DATE.getMonth() + 1);
var day = DATE.getDate() < 10 ? "0" + DATE.getDate() : DATE.getDate();



Date.prototype.Format = function (fmt) { //author: meizz 
    var o = {
        "M+": this.getMonth() + 1, //月份 
        "d+": this.getDate(), //日 
        "h+": this.getHours(), //小时 
        "m+": this.getMinutes(), //分 
        "s+": this.getSeconds(), //秒 
        "q+": Math.floor((this.getMonth() + 3) / 3), //季度 
        "S": this.getMilliseconds() //毫秒 
    };
    if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
    for (var k in o)
    if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
    return fmt;
}
 
var time1 = new Date().Format("yyyy-MM-dd");
var time2 = new Date().Format("yyyy-MM-dd hh:mm:ss");



//初始url
// 安徽
var anhui = "http://data.ahfc.gov.cn/k3/index.html";
// 福建
//var fujian = "http://kaijiang.500.com/fjk3.shtml";
var fujian = "http://kaijiang.500.com/static/info/kaijiang/xml/fjk3/" + 20 + year + month + day + ".xml";
// 甘肃
var gansu = "http://www.gsflcp.com/game/k3Index";
// 广西
var guangxi = "http://www.gxcaipiao.com.cn/xml/miss_zst_18.xml?timestamp=" + (new Date()).getTime(); // 接口+时间戳
// 贵州
var guizhou = "http://gzfucai.cn/report/KS_WinMessage.aspx";
// 河北
var hebei = "http://www.yzfcw.com/game/k3Index";
// 湖北
var hubei = "http://zst.hbfcw.gov.cn/chart/hbk3/index";
// 吉林
var jilin = "http://www.jlfc.com.cn/View/KS_WinInfo.aspx";
// 江苏
//var jiangsu = "http://kaijiang.500.com/jsk3.shtml";
var jiangsu = "http://kaijiang.500.com/static/info/kaijiang/xml/jsk3/" + 20 + year + month + day + ".xml";
// 江西
var jiangxi = "http://www.jxfczx.cn/report/K3_WinMessage.aspx";
// 内蒙古
//var neimenggu = "http://kaijiang.500.com/nmgk3.shtml";
var neimenggu = "http://kaijiang.500.com/static/info/kaijiang/xml/nmgk3/" + 20 + year + month + day + ".xml";
// 上海
var shanghai = "http://shk3kjjg.icaile.com/";
// 河南
var henan = "http://www.henanfucai.com/Kuaikai/Kuai3Zoushi.html";
// 青海
var qinghai = "http://kaijiang.500.com/static/info/kaijiang/xml/qhk3/" + 20 + year + month + day + ".xml";


// 初始化参数
var value = "01";
var province = "贵州";


//主程序开始运行
fetchPage(province, value);


// 封装一层函数
function fetchPage(province, value) {

	switch (province) {
		case "安徽":
			getAnHui(anhui, value);
			break;
		case "福建":
			// 170331017
			getFuJian(fujian, year + month + day + "0" +  value);
			break;
		case "甘肃":
			getGanSu(gansu, value);
			break;
		case "广西":
			//170331005
			getGuangXi(guangxi, year + month + day + "0" + value);
			break;
		case "河北":
			getHeBei(hebei, value);
			break;
		case "吉林":
			//170331005
			getJiLin(jilin, year + month + day + "0" + value);
			break;
		case "河南":
			//20170331019
			getHeNan(henan, "20" + year + month + day + "0" + value);
			break;
		case "湖北":
			//170331032
			getHuBei(hubei, year + month + day + "0" + value);
			break;
		case "上海":
			//170331032
			getShangHai(shanghai, year + month + day + "0" + value);
			break;
		case "江西":
			//170331038
			getJiangXi(jiangxi, year + month + day + "0" + value);
			break;
		case "贵州":
			//20170331040
			getGuiZhou(guizhou, 20 + year + month + day + "0" + value);
			break;
		case "江苏":
			//170331050
			getJiangSu(jiangsu, year + month + day + "0" + value);
			break;
		case "内蒙古":
			//170331050
			getNeiMengGu(neimenggu, year + month + day + "0" + value);
			break;
		case "青海":
			//170331051
			getQingHai(qinghai, year + month + day + "0" + value);
			break;
	}
}

/*
 * 青海
 * */
function getQingHai(x, value) {
	//采用http模块向服务器发起一次get请求
	http.get(x, function (res) {
		var html = '';        //用来存储请求网页的整个html内容
		var titles = [];
		res.setEncoding('utf-8'); //防止中文乱码

		//监听data事件，每次取一块数据
		res.on('data', function (chunk) {
			html += chunk;
		});
		//监听end事件，如果整个网页内容的html都获取完毕，就执行回调函数
		res.on('end', function () {

			var $ = cheerio.load(html); //采用cheerio模块解析html

			for (var i = 0; i < $("row").length; i++) {
				if (value == $("row")[i].attribs.expect) {
					setParamer($("row")[i].attribs.opencode);
				}
			}
		});

	}).on('error', function (err) {
		setParamer("err");
	});

}

/*
 * 内蒙古
 * */
function getNeiMengGu(x, value) {
	//采用http模块向服务器发起一次get请求
	http.get(x, function (res) {
		var html = '';        //用来存储请求网页的整个html内容
		var titles = [];
		res.setEncoding('utf-8'); //防止中文乱码

		//监听data事件，每次取一块数据
		res.on('data', function (chunk) {
			html += chunk;
		});
		//监听end事件，如果整个网页内容的html都获取完毕，就执行回调函数
		res.on('end', function () {

			var $ = cheerio.load(html); //采用cheerio模块解析html

			for (var i = 0; i < $("row").length; i++) {
				if (value == $("row")[i].attribs.expect) {
					setParamer($("row")[i].attribs.opencode);
				}
			}
		});

	}).on('error', function (err) {
		setParamer("err");
	});

}

/*
* 江苏
* */
function getJiangSu(x, value) {
	//采用http模块向服务器发起一次get请求
	http.get(x, function (res) {
		var html = '';        //用来存储请求网页的整个html内容
		var titles = [];
		res.setEncoding('utf-8'); //防止中文乱码

		//监听data事件，每次取一块数据
		res.on('data', function (chunk) {
			html += chunk;
		});
		//监听end事件，如果整个网页内容的html都获取完毕，就执行回调函数
		res.on('end', function () {

			var $ = cheerio.load(html); //采用cheerio模块解析html

			for (var i = 0; i < $("row").length; i++) {
				if (value == $("row")[i].attribs.expect) {
					setParamer($("row")[i].attribs.opencode);
				}
			}
		});

	}).on('error', function (err) {
		setParamer("err");
		setParamer(err);
	});

}

/*
* 贵州
* */
function getGuiZhou(x, value) {
	//采用http模块向服务器发起一次get请求
	http.get(x, function (res) {
		var html = '';        //用来存储请求网页的整个html内容
		var titles = [];
		res.setEncoding('utf-8'); //防止中文乱码

		//监听data事件，每次取一块数据
		res.on('data', function (chunk) {
			html += chunk;
		});
		//监听end事件，如果整个网页内容的html都获取完毕，就执行回调函数
		res.on('end', function () {

			var $ = cheerio.load(html); //采用cheerio模块解析html

			// 爬取当期k3值
			var k3 = $("#ssc_tb .td_play_reward:contains('" + value + "')").next().text().trim();
			console.log(k3)
			// 控制台打印信息
			setParamer(k3);
		});

	}).on('error', function (err) {
		setParamer("err");
		setParamer(err);
	});

}

/*
* 江西
* */
function getJiangXi(x, value) {
	//采用http模块向服务器发起一次get请求
	http.get(x, function (res) {
		var html = '';        //用来存储请求网页的整个html内容
		var titles = [];
		res.setEncoding('utf-8'); //防止中文乱码

		//监听data事件，每次取一块数据
		res.on('data', function (chunk) {
			html += chunk;
		});
		//监听end事件，如果整个网页内容的html都获取完毕，就执行回调函数
		res.on('end', function () {

			var $ = cheerio.load(html); //采用cheerio模块解析html

			// 爬取当期k3值
			var k3 = $("#termCode2 .td_play_reward:contains('" + value + "')").next().text().trim();
			// 控制台打印信息
			setParamer(k3);
		});

	}).on('error', function (err) {
		setParamer("err");
		setParamer(err);
	});


}


/*
* 上海
* */
function getShangHai(x, value) {
	//采用http模块向服务器发起一次get请求
	http.get(x, function (res) {
		var html = '';        //用来存储请求网页的整个html内容
		var titles = [];
		res.setEncoding('utf-8'); //防止中文乱码

		//监听data事件，每次取一块数据
		res.on('data', function (chunk) {
			html += chunk;
		});
		//监听end事件，如果整个网页内容的html都获取完毕，就执行回调函数
		res.on('end', function () {

			var $ = cheerio.load(html); //采用cheerio模块解析html

			// 爬取当期k3值
			var k3 = $("table.tablelist td:contains('" + value + "')").next().children().text().trim();
			// 控制台打印信息
			setParamer(k3);
		});

	}).on('error', function (err) {
		setParamer(err);
	});
}


/*
* 湖北
* */
function getHuBei(x, value) {
	//采用http模块向服务器发起一次get请求
	http.get(x, function (res) {
		var html = '';        //用来存储请求网页的整个html内容
		var titles = [];
		res.setEncoding('utf-8'); //防止中文乱码

		//监听data事件，每次取一块数据
		res.on('data', function (chunk) {
			html += chunk;
		});
		//监听end事件，如果整个网页内容的html都获取完毕，就执行回调函数
		res.on('end', function () {

			var $ = cheerio.load(html); //采用cheerio模块解析html

			// 爬取当期k3值
			var k3 = $("#chartsTbody :contains('" + value + "') .ball01").text().trim();
			// 控制台打印信息
			setParamer(k3);
		});

	}).on('error', function (err) {
		setParamer("err");
	});
}
/*
* 河南
* */
function getHeNan(x, value) {
	//采用http模块向服务器发起一次get请求
	http.get(x, function (res) {
		var html = '';        //用来存储请求网页的整个html内容
		var titles = [];
		res.setEncoding('utf-8'); //防止中文乱码

		//监听data事件，每次取一块数据
		res.on('data', function (chunk) {
			html += chunk;
		});
		//监听end事件，如果整个网页内容的html都获取完毕，就执行回调函数
		res.on('end', function () {

			var $ = cheerio.load(html); //采用cheerio模块解析html

			// 爬取当期k3值
			var k3 = $("table tr.xunhuan td.td_1:contains('" + value + "')").next().text().trim();
			k3 += $("table tr.xunhuan td.td_1:contains('" + value + "')").next().next().text().trim();
			k3 += $("table tr.xunhuan td.td_1:contains('" + value + "')").next().next().next().text().trim();
			// 控制台打印信息
			setParamer(k3);
		});

	}).on('error', function (err) {
		setParamer(err);
	});
}

/*
* 吉林
* */
function getJiLin(x, value) {
	//采用http模块向服务器发起一次get请求
	http.get(x, function (res) {
		var html = '';        //用来存储请求网页的整个html内容
		var titles = [];
		res.setEncoding('utf-8'); //防止中文乱码

		//监听data事件，每次取一块数据
		res.on('data', function (chunk) {
			html += chunk;
		});
		//监听end事件，如果整个网页内容的html都获取完毕，就执行回调函数
		res.on('end', function () {

			var $ = cheerio.load(html); //采用cheerio模块解析html

			// 爬取当期k3值
			var k3 = $("table tr td.td_play_reward.td4:first-child:contains('" + value + "')").next().text().trim();

			// 控制台打印信息
			setParamer(k3);
		});

	}).on('error', function (err) {
		setParamer("err");
	});
}

/*
* 河北
* */
function getHeBei(x, value) {
	//采用http模块向服务器发起一次get请求
	http.get(x, function (res) {
		var html = '';        //用来存储请求网页的整个html内容
		var titles = [];
		res.setEncoding('utf-8'); //防止中文乱码

		//监听data事件，每次取一块数据
		res.on('data', function (chunk) {
			html += chunk;
		});
		//监听end事件，如果整个网页内容的html都获取完毕，就执行回调函数
		res.on('end', function () {

			var $ = cheerio.load(html); //采用cheerio模块解析html

			// 爬取当期k3值
			var k3 = $("table[width='333'] td:first-child:contains('" + value + "')").next().text().trim();

			// 控制台打印信息
			setParamer(k3);
		});

	}).on('error', function (err) {
		setParamer("err");
	});
}


/*
* 广西
* */
function getGuangXi(x, value) {
	//采用http模块向服务器发起一次get请求
	http.get(x, function (res) {
		var html = '';        //用来存储请求网页的整个html内容
		var titles = [];
		res.setEncoding('utf-8'); //防止中文乱码

		//监听data事件，每次取一块数据
		res.on('data', function (chunk) {
			html += chunk;
		});
		//监听end事件，如果整个网页内容的html都获取完毕，就执行回调函数
		res.on('end', function () {

			var $ = cheerio.load(html); //采用cheerio模块解析html

			var obj = $.root()[0].children[1].next.children;

			obj.forEach(function (element) {

				if (value == element.attribs.id) {
					setParamer(element.attribs.c);
				}

			});

		});

	}).on('error', function (err) {
		setParamer("err");
	});

}

/*
* 甘肃
* */
function getGanSu(x, value) {
	//采用http模块向服务器发起一次get请求
	http.get(x, function (res) {
		var html = '';        //用来存储请求网页的整个html内容
		var titles = [];
		res.setEncoding('utf-8'); //防止中文乱码

		//监听data事件，每次取一块数据
		res.on('data', function (chunk) {
			html += chunk;
		});
		//监听end事件，如果整个网页内容的html都获取完毕，就执行回调函数
		res.on('end', function () {

			var $ = cheerio.load(html); //采用cheerio模块解析html

			// 爬取当期k3值
			var k3 = $(".k3_prize_2_2 .k3_gray:contains('" + value + "') ").next().text().trim();

			// 控制台打印信息
			setParamer(k3);
		});

	}).on('error', function (err) {
		setParamer("err");
	});
}

/*
* 福建K3
* */
function  getFuJian(x, value) {
	//采用http模块向服务器发起一次get请求
	http.get(x, function (res) {
		var html = '';        //用来存储请求网页的整个html内容
		var titles = [];
		res.setEncoding('utf-8'); //防止中文乱码

		//监听data事件，每次取一块数据
		res.on('data', function (chunk) {
			html += chunk;
		});
		//监听end事件，如果整个网页内容的html都获取完毕，就执行回调函数
		res.on('end', function () {

			var $ = cheerio.load(html); //采用cheerio模块解析html

			for (var i = 0; i < $("row").length; i++) {
				if (value == $("row")[i].attribs.expect) {
					setParamer($("row")[i].attribs.opencode);
				}
			}
		});

	}).on('error', function (err) {
		setParamer("err");
	});
}




/*
* 安徽K3
* */
function getAnHui(x, value) {
	//采用http模块向服务器发起一次get请求
	http.get(x, function (res) {
		var html = '';        //用来存储请求网页的整个html内容
		var titles = [];
		res.setEncoding('utf-8'); //防止中文乱码

		//监听data事件，每次取一块数据
		res.on('data', function (chunk) {
			html += chunk;
		});
		//监听end事件，如果整个网页内容的html都获取完毕，就执行回调函数
		res.on('end', function () {

			var $ = cheerio.load(html); //采用cheerio模块解析html

			// 爬取当期k3值
			var k3 = $("#chartsTbody :contains('" + value + "') .ball01").text().trim();

			// 控制台打印信息
			setParamer(k3);
		});

	}).on('error', function (err) {
		setParamer("err");
	});

}

function setParamer(k3) {
    
    console.log(k3.split(","));


    
}